+2009-01-24 Matthias Clasen <mclasen@redhat.com>
+
+ Revert changes for bug 567124. Instead of trying to avoid
+ setting up the im context before the widget is realized, just
+ reset it when the client window is set.
+
+ * gtk/gtkimmulticontext.c: Reset the slave when a client window
+ is set.
+
+ * gtk/gtkimmodule.c
+ * gtk/gtktextview.c: Revert changes for bug 567124.
+
2009-01-25 Claudio Saavedra <csaavedra@igalia.com>
* gtk/gtktreeview.c: Use gtk-doc syntax to refer to properties in
GdkScreen *screen;
GtkSettings *settings;
- /* assertion to make sure all of the unexpected invocation is really gone. */
- g_return_val_if_fail (client_window != NULL, SIMPLE_ID);
-
if (!contexts_hash)
gtk_im_module_initialize ();
if (!multicontext->slave)
{
GtkIMContext *slave;
-
+
g_free (multicontext->context_id);
if (multicontext->priv->context_id)
GdkWindow *window)
{
GtkIMMulticontext *multicontext = GTK_IM_MULTICONTEXT (context);
- GtkIMContext *slave;
GdkScreen *screen;
GtkSettings *settings;
gboolean connected;
multicontext->priv->client_window = window;
- slave = gtk_im_multicontext_get_slave (multicontext);
-
- if (slave)
- gtk_im_context_set_client_window (slave, window);
+ gtk_im_multicontext_set_slave (multicontext, NULL, FALSE);
if (window == NULL)
return;
*/
area.width = 0;
- if (GTK_WIDGET_REALIZED (text_view))
- gtk_im_context_set_cursor_location (text_view->im_context, &area);
+ gtk_im_context_set_cursor_location (text_view->im_context, &area);
}
static gboolean
}
/* Ensure updating the spot location. */
- gtk_text_view_update_im_spot_location(text_view);
+ gtk_text_view_update_im_spot_location (text_view);
}
static void